מערכות מעברים Systems( )Transition גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון

Σχετικά έγγραφα
דף פתרונות 7 נושא: תחשיב הפסוקים: צורה דיסיונקטיבית נורמלית, מערכת קשרים שלמה, עקביות

אוטומט סופי דטרמיניסטי מוגדר ע"י החמישייה:

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ב (2012) דפי עזר

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ד (2014) דפי עזר

{ : Halts on every input}

שפות פורמאליות אוטומטים

שפות פורמאליות אוטומטים

Logic and Set Theory for Comp. Sci.

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

חורף תש''ע פתרון בחינה סופית מועד א'

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

התפלגות χ: Analyze. Non parametric test

שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

הגדרה 0.1 טיעון הוא תקף אם בכל פעם שההנחות נכונות גם המסקנה נכונה.

לוגיקה ותורת הקבוצות אביבתשס ז מבחןסופי מועדב בהצלחה!

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

הגדרה: מצבים k -בני-הפרדה

חלק 1 כלומר, פונקציה. האוטומט. ) אותיות, אלפבית, א"ב (.

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

תרגול פעולות מומצאות 3

אוגרים: Registers מונים: Counters

gcd 24,15 = 3 3 =

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

חישוביות הרצאה 4 לא! זיהוי שפות ע''י מכונות טיורינג הוכחה: הגדרת! : f r

ביטויים רגולריים הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353) הרצאה 5

"שקר". במקום המילים "אמת" או "שקר" משתמשים באותיות T ו- F (באנגלית truth אמת, false שקר (


סיכום חקירת משוואות מהמעלה הראשונה ומהמעלה השנייה פרק זה הינו חלק מסיכום כולל לשאלון 005 שנכתב על-ידי מאיר בכור

אלגברה ליניארית 1 א' פתרון 2

מודלים חישוביים כריעות R זוהי מחלקת השפות הכריעות. מחלקה זו סגורה תחת פעולת המשלים. רדוקציה בעיית ההכרעה רדוקציית מיפוי.

Domain Relational Calculus דוגמאות. {<bn> dn(<dn, bn> likes dn = Yossi )}

מתמטיקה בדידה תרגול מס' 13

נספח לפרק 10 דוגמא לאנליזה של מכונת מצבים ננסה להבין את פעולתה של מ כונת המצבים הבאה : Input X. q 0 q 1. output D FF-0 D FF-1. clk

ל הזכויות שמורות לדפנה וסטרייך

גבול ורציפות של פונקציה סקלרית שאלות נוספות

Regular Expressions (RE)

לוגיקה למדעי המחשב תרגולים

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

1 תוחלת מותנה. c ארזים 3 במאי G מדיד לפי Y.1 E (X1 A ) = E (Y 1 A )

אלגברה לינארית (1) - פתרון תרגיל 11

בעיות חשיבות: :(State transition system) STS מושגים: רדוקציה: f אינה חשיבה g אינה חשיבה; בבעיות הכרעה: f לא כריעה g לא כריעה.

תכנות בשפת C פרק שלישי: בקרת זרימה שייקה בילו יועץ ומרצה בכיר למדעי המחשב וטכנולוגית מידע מומחה למערכות מידע חינוכיות, אקדמיות ומנהליות

קיום ויחידות פתרונות למשוואות דיפרנציאליות

xpy xry & ~yrx xiy xry & yrx

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

תורת הקבוצות מושגי יסוד בתורת הקבוצות קבוצה אוסף של אלמנטים הנקראים אברי הקבוצה. אין חשיבות לסדר האיברים בקבוצה. אין חשיבות לחזרות.

רשימת משפטים והגדרות

מודלים חישוביים פתרון תרגיל 5

תרגיל 13 משפטי רול ולגראנז הערות

בחינה בסיבוכיות עמר ברקמן, ישי חביב מדבקית ברקוד

לוגיקה למדעי המחשב ניצן פומרנץ 25 ביוני 2015

c ארזים 26 בינואר משפט ברנסייד פתירה. Cl (z) = G / Cent (z) = q b r 2 הצגות ממשיות V = V 0 R C אזי מקבלים הצגה מרוכבת G GL R (V 0 ) GL C (V )

אינפי - 1 תרגול בינואר 2012

תרגול מס' 6 פתרון מערכת משוואות ליניארית

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

מינימיזציה של DFA מינימיזציה של הקנוני שאותה ראינו בסעיף הקודם. בנוסף, נוכיח את יחידות האוטומט המינימלי בכך שנראה שכל אוטומט על ידי שינוי שמות

שאלה 1 V AB פתרון AB 30 R3 20 R

אוטומטים מעל עצמים אינסופיים 67663

תורת המספרים 1 פירוק לגורמים ראשוניים סיכום הגדרות טענות ומשפטים אביב הגדרות 1.2 טענות

מבני נתונים ואלגוריתמים תרגול #8-9

( k) ( ) = ( ) ( ) ( ) ( ) A Ω P( B) P A B P A P B תכונות: A ו- B ב"ת, אזי: A, B ב "ת. בינומי: (ההסתברות לk הצלחות מתוך n ניסויים) n.

מודלים חישוביים תרגולמס 5

אלגברה ליניארית (1) - תרגיל 6

logn) = nlog. log(2n

הרצאות לוגיקה ותורת הקבוצות. מרצה: אורנה גרימברג מתרגל: שקד פלור זכויות יוצרים: יאנה גרינברג (תורת הקבוצות)

מבוא ללוגיקה מתמטית 80423

תרגול משפט הדיברגנץ. D תחום חסום וסגור בעל שפה חלקה למדי D, ותהי F פו' וקטורית :F, R n R n אזי: נוסחת גרין I: הוכחה: F = u v כאשר u פו' סקלרית:

אוטומטים, שפות פורמליות ו ח ישוּב יוּת

מתמטיקה בדידה תרגול מס' 5

מבוא לרשתות - תרגול מס 5 תורת התורים

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

מודלים חישוביים, חישוביות וסיבוכיות (חישוביות) 67521

מתמטיקה בדידה תרגול מס' 2

אימות חומרה תוכנה אלי דיין 1 6 בדצמבר

אי שלמות ואי כריעות בשפות פורמליות ד ר אסף חסון, אוניברסיטת בן גוריון בנגב

פולינומים אורתוגונליים

תורת הגרפים - סימונים

מבני נתונים מדעי המחשב שאלון: מועד ב' תשע"ו מדעי המחשב פתרון בחינת הבגרות. Java שאלה 1. blog.csit.org.

סיכום- בעיות מינימוםמקסימום - שאלון 806

אלגוריתמים בתורת הגרפים חלק ראשון

לוגיקה מתמטית הוא התחום במתמטיקה שחוקר בצורה מדויקת מושגים כמו טענה ו- הוכחה. על מנת לספק מוטיבציה, נתבונן בשתי דוגמאות היסטוריות.

אוסף שאלות מס. 3 פתרונות

אלגוריתמים 1, סמסטר אביב 2017

תורת הקבוצות יובל קפלן סיכום הרצאות פרופ ארז לפיד בקורס "תורת הקבוצות" (80200) באוניברסיטה העברית,

רשימת בעיות בסיבוכיות

מבוא לרשתות - תרגול מס 5 תורת התורים

אוטומטים ושפות פורמליות מבוא לתורת החישוביות

מבחן מועד ב' בהצלחה! אנא קיראו היטב את ההוראות שלהלן: ודאו כי כל עמודי הבחינה נמצאים בידכם.

תורת הקבוצות תרגיל בית 2 פתרונות

2 שאלות )בחירה מ - 4( סה"כ 25 נקודות לכל שאלה 22 נקודות

אוטומטים ושפות פורמליות תרגולים

{ } { } { A חוקי דה-מורגן: הגדרה הסתברות מותנית P P P. נוסחת בייס ) :(Bayes P P נוסחת ההסתברות הכוללת:

קורס: מבוא למיקרו כלכלה שיעור מס. 17 נושא: גמישויות מיוחדות ושיווי משקל בשוק למוצר יחיד

Transcript:

מערכות מעברים Systems( )Transition גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון

2 תזכורת: Checking( )Model בדיקות מודל מערכת דרישות מידול פירמול תכונות פורמליות בדיקות מודל )Model Checking( מודל של המערכת סימולציה דוגמה נגדית התכונות הוכחה

3 מערכות מעברים Systems( )Transition מודל לתיאור התנהגויות מערכת גרף מכוון שבו צמתים מייצגים מצבים וקשתות מתארות מעברים בין המצבים דוגמאות למצב מערכת: הצבע הנכחי של הרמזור ערך כל האוגרים והסיביות ערך משתני התכנית כולל program counter מצב ב ' פעולה מצב א ' דוגמאות למעבר )שינוי מצב( החלפת צבע הרמזור ביצוע פקודה בתוכנית שינוי ערך האוגרים

4 )tuple( מערכת מעברים סדורה שישיה מערכת מעברים נתונה על-ידי hs, Act,, I, AP, Li כש- היא קבוצת ו I µ S המצבים היא קבוצת המצבים ההתחלתיים S Act היא קבוצת הפעולות µ S Act S AP הוא יחס המעברים היא קבוצת הפסוקים האטומיים L: S 2 AP היא פונקצית תיוג יחס המכיל שלשות כמו iמתג דולק, מסומן גם ע"י מתג דולק הדלקה, מתג כבויh הדלקה מתג כבוי קבוצת תת הקבוצות של AP S ו- Act הן קבוצות סופיות )או בנות מנייה( סימון: s s α במקום hs,,s i 2

5 ייצוג גראפי פעולה מצב מתג דולק הדלקה מתג כבוי }חשמל זורם, יש אור{ }חשמל לא זורם, אין אור } קבוצת תכונות המתקיימות כשנמצאים במצב

6 דוגמא: מכונה אוטומטית למכירת משקאות pay get_sprite insert_coin get_beer sprite select beer S = fpay; select; sprite; beerg I = fpayg Act = finsert coin; get beer; get spriteg! = fpay insert coin! select; beer get beer! pay; : : : g

7 דוגמה: פסוקים אטומיים הפסוקים האטומיים נקבעים ע"פ התכונות שרוצים לדבר עליהן בחירה קלה: שמות המצבים מתפקדים גם כפסוקים אטומיים בחירה אחרת: עבור התכונה "המכונה נותנת משקה רק לאחר שהתקבל תשלום", שאיננה מתייחסת לסוג המשקה, מספיקים הפסוקים: AP = {paid,drink} ופונקציית התיוג: L(pay)=;, L(soda)=L(beer)={paid,drink}, L(select)={paid}

8 מצבים עוקבים ומצבים קודמים Pre(s; ) = fs 0 2 S : s 0! sg α α s α α α α Post(s; ) = fs 0 2 S : s! s 0 g

9 מצבים עוקבים ומצבים קודמים Pre(C; ) = [ s2c Pre(s; ) α α α α α s 2 α α s 1 α C = fs 1 ; s 2 g Post(C; ) = [ s2c Post(s; )

10 מצבים עוקבים ומצבים קודמים Pre(s) = [ Pre(s; ) 2Act b a s c a b c Post(s) = [ 2Act Post(s; )

11 מצבים עוקבים ומצבים קודמים : 2 Act קבוצת המצבים העוקבים/קודמים למצב s 2 S במעבר Post(s; ) = fs 0 2 S : s! s 0 g Pre(s; ) = fs 0 2 S : s 0! sg קבוצת המצבים העוקבים/קודמים למצב s 2 S )לכל המעברים(: Post(s) = [ Post(s; ) 2Act Pre(s) = [ 2Act Pre(s; ) קבוצת המצבים העוקבים/קודמים לקבוצת מצבים C µ S ומעבר : 2 Act Post(C; ) = [ Post(s; ) Pre(C; ) = [ Pre(s; ) s2c s2c קבוצת המצבים העוקבים/קודמים לקבוצת מצבים C µ S )לכל המעברים(: Post(C) = [ Post(s) Pre(C) = [ Pre(s) s2c s2c

12 מצבים סופיים )סופניים?( מצב s במערכת מעברים נקרא אם סופי Post s = בתוכנות המבצעות חישובים סדרתיים: מצבים סופיים הם תופעה טבעית המייצגת את סיום התוכנית במערכות תגובתיות )ריאקטיביות(: מצבים כאלה מייצגים "תקיעה" ובד"כ אינם רצויים

13 תפקיד אי-הדטרמיניזם אי-דטרמיניזם למידול: מנוצל מקביליות ע"י שזירת )interleaving( אין הנחות על המהירות היחסית בין התהליכים חופש מימוש פעולות התהליכים מתארים רק מה המערכת צריכה לעשות, לא איך מתאים למידול בשלבי הגדרת הדרישות והתכנון אח"כ מעדנים את המודל אבסטרקציה של מערכות משתמשים במידע חלקי הערה: בתורת האוטומטים אי-דטרמיניזם מאפשר תאור קומפקטי של שפות אנחנו משתמשים באי-דטרמיניזם מסיבות אחרות. )אקספוננציאלית כאן יותר קטן(.

14 דטרמיניזם ע"פ פעולה וע"פ תיוג פעולה-דטרמיניסטית אם: מערכת מעברים hs, Act,, I, AP, Li היא בעלת וגם s ו- לכל Post(s, ) 1 I 1 תיוג-דטרמיניסטי אם: מערכת מעברים hs, Act,, I, AP, Li היא בעלת A µ AP s וגם 1 L(s )=A} Post(s) Å { s 2 S : ולכל לכל I 1 של עוקבים s בעלי תיוג זהה

15 סמנטיקה: ריצות ומקטעי ריצות מקטע ריצה סופי של מערכת מעברים הוא רצף מתחלף של מצבים ופעולות המסתיים במצב: i+1 ½ = s 0 1 s 1 2 : : : n s n such that s i! s i+1 for all 0 i n מקטע ריצה אינסופי של מערכת מעברים הוא רצף מתחלף אינסופי של מצבים ופעולות: i+1 ½ = s 0 1 s 1 2 : : : such that s i! s i+1 for all 0 i ריצה של מערכת מצבים היא מקטע ריצה התחלתי ומקסימאלי מקטע ריצה הוא התחלתי אם s 0 2 I מקטע ריצה מקסימאלי הוא מקטע ריצה סופי המסתיים במצב סופי )ללא עוקבים(, אינסופי או מקטע ריצה

16 דוגמאות ריצה ½ 1 = pay coin! select! sprite get sprite! pay coin! select! sprite get sprite! : : : ½ 2 = select! sprite get sprite! pay coin! select! coke get coke! : : : ½ 3 = pay coin! select! sprite get sprite! pay coin! select! sprite ½ 3 הם ½ 2 ו- הריצה מקטעי ½ 1 התחלתיים. איננו התחלתי. אינו מקסימאלי כיוון שאינו מסתיים במצב סופי. ½ 3 ½ 2 בהנחה ש- ½ 1 ו- הם אינסופיים, מקסימאליים.

17 מצבים נגישים States( )Reachable :s נגיש נקרא מצב s 2 S אם קיים מקטע ריצה התחלתי המסתיים ב s 0 1! s1 2! n! sn = s TS היא קבוצת כל המצבים הנגישים במערכת Reach(TS)

18 דוגמה: מידול מעגלים לוגיים x XOR NOT y x = 0, r = 0 x = 1, r = 0 {y} {x} OR x = 0, r = 1 x = 1, r = 1 r {r} {x,r,y} תרגום מסכימת מעגל לוגי למערכת מעברים r )register( משתנה פלט y ואוגר משתנה קלט x, פונקצית הפלט r) :(x והקלט לאוגר x Ç r

19 פסוקים אטומיים שתי אפשרויות לתיוג המצבים: נבחר AP={x,y,r} L(hx=1, r=1i)={x,r,y} L(hx=1, r=0i)={x} L(hx=0, r=1i)={r} L(hx=0, r=0i)={y} תכונה לדוגמה: "ברגע שהאוגר הוא אחד הוא נשאר אחד" נבחר AP={x,y} עכשיו ערכי האוגר "בלתי נראים" L(hx=1, r=1i)={x, y} L(hx=1, r=0i)={x} L(hx=0, r=1i)=; L(hx=0, r=0i)={y} תכונה לדוגמה: "ערך משתנה הפלט y מוחלף אינסוף פעמים" אי אפשר לתאר תכונות המתייחסות לערך האוגר

20 מ ת כו ן לתרגום סכימת מעגל לוגי למערכת מעברים הרחבת הרעיון שהוצג בדוגמה שראינו ניתן לממש מהדר :)compiler( קלט: פלט: סכימת מעגל לוגי מערכת מעברים דוגמה ל-"שפה עילית" )problem domain( המותאמת לתחום הבעיה מאפשר לנו להתרכז בבדיקות מודל עבור מערכות מעברים בהנחה שהתרגום מעולם המושגים של הבעיה יכול להיות אוטומטי

21 דוגמה: מעברים מותנים תוכניות תלויות-נתונים בנויות מפקודות מהצורה: if x%2 = 1 then x = x + 1 else x = 2x fi מידול כמערכת מעברים: אפשר להשמיט את התנאים ולתרגם למעבר לא דטרמיניסטי אפשר גם לכתוב את התנאים והפעולות על החצים: x%2 = 1 x = x + 1 x%2 = 0 x 2x תוכנית גרף נקרא לזה אח"כ נפרוש )unfold( למערכת מצבים רגילה )באופן אוטומטי(

22 דוגמה: שכלול מודל מכונת השתייה סופרים כמות בקבוקי הספרייט והבירה ומחזירים מטבע אם המכונה ריקה: start select true : coin! select start nsprite>0 : get sprite! start select select true : re ll! select nbeer=0^nbeer=0 : ret coin! start nbeer>0 : get coke! start פעולה coin ret_coin get_sprite get_beer refill השפעה על משתנים nsprite = nsprite 1 nbeer = nbeer 1 nsprite = max; nbeer = max

23 גרף תוכנית x%2 = 1 x = x + 1 כלי למידול תוכניות עם משתנים ותנאים x%2 = 0 x = 2x גרף מכוון עם סימונים על הקשתות: הצמתים הם המקומות בתוכנית הקשתות מסומנות בביטויים מהצורה : תנאי פעולה התנאים קובעים איזה קשתות "מאופשרות" הפעולות מעדכנות את ערכי המשתנים

24 הצבות, תנאים והשפעה קבוצת ההשמות )evaluations( :Eval(Var) השמה היא פונקציה המתאימה לכל משתנה ערך למשל: = 11 η(x) ו- 8 = η(y) :Cond(Var) קבוצת התנאים )conditions( נוסחאות בתחשיב פסוקים. הפסוקים האטומיים מהצורה x D למשל: 2z) < x 19 y = up (x 7 השפעת )effect( הפעולה מתוארת ע"י מיפוי: Effect: Act Eval Var Eval(Var) דוגמה: + 5 y α x ו- המוגדרת למעלה Effect(α, η)(x) = η(y) + 5 = 3 Effect α, η y = η(y) = 8

25 גרף תוכנית Var גרף תוכנית graph( )program מעל קבוצת משתנים הוא Loc, Act, Effect,, Loc 0, g 0 Loc 0 Loc היא קבוצת מקומות )locations( עם מצבים התחלתיים Loc Act היא קבוצת הפעולות Cond היא קבוצת התנאים Eval(Var) Effect: Act Eval Var היא פונקציית ההשפעה Loc Cond Act Loc הוא יחס המעברים g 0 Cond הוא תנאי ההתחלה h l, g,, l i 2 במקום l g: סימון:! l 0

26 מכונת משקאות Loc = *start, select+ with Loc 0 = start Act = *get _ beer, get _ sprite, coin, retcoin, refill+ Var = *nsprite, nbeer+ both with domain *0,1,, 100+ Effect(coin, η) = η Effect(retcoin, η) = η Effect(get _ sprite, η) = η,nsprite = nsprite 1- Effect(get _ beer, η ) = η,nbeer = nbeer 1- Effect(refill,η) =,nsprite = 100, nbeer = 100- g 0 = (nsprite = 100 nbeer = 100)

27 מגרף תוכנית למערכת מעברים g 0 רעיון בסיסי: )unfolding( פריסה מצב = מקום בתוכנית + l השמה למשתנים מצב התחלתי = מצב המקיים את תנאי ההתחלה פסוקים ותיוג פסוקים: l at ו D x 2 עבור dom(x) D µ hl, i מתוייג ב- l at ובל התנאים שמתקיימים ב- hl, i hl,effect(, )i g אם l l! מתקיים ב ו אז g :

28 סמנטיקת פעולה פורמאלית משמעות הסימון : הנחה מסקנה אם הפסוק מעל הקו )ההנחה( מתקיים, אז הפסוק מתחת לקו נכון )המסקנה( "... אז "אם פסוקי..., כאלה נקראים כללי הסק כשההנחה היא טאוטולוגיה, אפשר להשמיט אותה )וגם את הקו המפריד( המקרה האחרון נקרא גם אקסיומה

29 מערכת מעברים לגרף התוכנית בהנתן גרף תוכנית, נגדיר מערכת מעברים: l g:! l 0 ^ j= g hl; i! hl 0 ; Effect( ; )i S = Loc Eval(Var) µ S Act S מצבים: מעברים: מוגדר ע"י I = {h l, i: l 2 Loc 0, ² g 0 } AP = Loc [ Cond מצבים התחלתיים: פסוקים אטומיים: תוויות: } g L(hl, i) = { l } [ { g 2 Cond(Var): ²

מערכת מעברים למכונת המשקאות 30

31 מערכות מעברים אוטומטים סופיים בניגוד לאוטומטים סופיים במערכות מעברים: אין מצבים מקבלים מספר המצבים והפעולות יכול להיות בן-מנייה יכולים להיות אינסוף עוקבים פעולות תלויות בסנכרון )נדבר בהרצאה הבאה...( תפקיד שונה לאי-דטרמיניסטיות מערכות מצבים מתאימות למידול התנהגות מערכות תגובתיות